﻿using System.Collections.ObjectModel;
namespace Renci.Data.Interop.OpenGIS.Gml
{
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.opengis.net/gml")]
    [System.Xml.Serialization.XmlRootAttribute("FeatureStyle", Namespace = "http://www.opengis.net/gml", IsNullable = false)]
    public class FeatureStyleType : AbstractGMLType
    {
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("featureConstraint")]
        public string FeatureConstraint { get; set; }

        private Collection<GeometryStylePropertyType> _geometryStyle = new Collection<GeometryStylePropertyType>();
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("geometryStyle")]
        public Collection<GeometryStylePropertyType> GeometryStyle 
        {
            get
            {
                return this._geometryStyle;
            }
        }

        private Collection<TopologyStylePropertyType> _topologyStyle = new Collection<TopologyStylePropertyType>();
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("topologyStyle")]
        public Collection<TopologyStylePropertyType> TopologyStyle 
        {
            get
            {
                return this._topologyStyle;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("labelStyle")]
        public LabelStylePropertyType LabelStyle { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute("featureType")]
        public string FeatureType { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute("baseType")]
        public string BaseType { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute("queryGrammar")]
        public QueryGrammarEnumeration QueryGrammar { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool QueryGrammarSpecified { get; set; }
    }
}
